One of the most attractive aspects of a storage area network (SAN) is that network connectivity enables a company to efficiently use storage by sharing storage capacity among a number of servers. This may be implemented using a large number of small capacity storage devices. However, unless sufficiently robust management software is employed, such use of small capacity devices in a SAN may result in significant management overhead. Most users prefer to install large capacity storage devices and partition the device(s), assigning each partition to a different server. For example, existing firmware for enterprise level disk arrays allow users to define multiple redundant arrays of independent disks (RAID), where each RAID set appears as a different logical unit number (LUN). Each one of these LUNs may be dedicated to a different server.
In certain SAN usage scenarios, such as may arise for storage service providers (SSPs), there are multiple customers attempting to share common SAN resources. In such cases, there is a need to ensure that customers can only see and access the storage resources they have been allocated and prevent them from accessing storage of other customers. For example, if a customer stores their critical business data with a SSP, then they generally do not want other customers of the SSP reading their data or even being aware that the customer has information stored with the SSP. To isolate user data in a data library the library may be partitioned. However, special hardware or special backup software as described below has been used to implement partitioning.
Existing software-based data library partitioning solutions typically employ a host system that restricts access to portions of a tape library. The host restrictions are implemented by a mediating (software) process on a host system to enforce partition restrictions. However, this approach is problematic. Specifically, the approach is undesirable if the data library is utilized in a SSP environment. In SSP environments, the data library and the host systems belong to different entities (e.g., the SSP and the customers). Placement of software mediating processes on host systems is unattractive, because it increases the burden on the customers to make use of the storage service. Moreover, many customers are unwilling to allow other parties to place software on their host systems. Additionally, the software mediating process approach is typically incompatible with existing data back-up utilities, i.e., the software mediating process approach requires the use of specialized data back-up applications. Hence, users are effectively denied the ability to run desired backup software.
An additional problem may arise in that a library operator may accidentally place a medium in an incorrect storage slot within a partitioned data library or in an entirely incorrect data library within an SSP's facility. This may allow this misplaced medium to be read by an SSP customer or user other than the owner of the information on the misplaced medium.
The use of memory in a tape cartridge, generally referred to as cartridge memory (CM), is known in the art. Existing cartridges and drives store information in the CM such as how many times a tape has been loaded, a cassette serial number, what was last written on the tape, what block was last written to on the tape and/or the tape error rate. Conventionally this information facilitates setting up the tape when it is inserted back into a drive. For example, each time a tape cartridge with CM is inserted into a drive the CM is read during initialization of the drive. During the drive initialization sequence, the drive reads the memory, diagnoses the tape, recognizes the tape format and where writing should begin. Additionally, information in the memory about error rate and/or number of loads can help diagnose failing tapes. Such CM may also be referred to as memory in cartridge (MIC).